package com.fishery.processing.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.util.Date;
import java.io.Serializable;

import com.fishery.processing.util.Unchangeable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotEmpty;

/**
 * <p>
 * 
 * </p>
 *
 * @author ${author}
 * @since 2021-01-14
 */
@ApiModel(value="ProcessingProductQualification对象", description="加工产品资质表")
@TableName(value = "t_processing_product_qualification")
public class Qualification implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "产品资质编号")
    @TableId(value = "id", type = IdType.ID_WORKER_STR)
    private String id;

    @ApiModelProperty(value = "产品编号")
    @NotEmpty(message = "产品编号不能为空")
    @Unchangeable
    private String productId;

    @ApiModelProperty(value = "质检部门检验报告")
    private String inspectionReport;

    @ApiModelProperty(value = "质量管理体系认证书")
    private String qualityCertificate;

    @ApiModelProperty(value = "食品安全管理体系认证书")
    private String safetyCertificate;

    @ApiModelProperty(value = "产品生产许可证")
    private String license;

    @ApiModelProperty(value = "产品信息")
    private String productInfo;

    @ApiModelProperty(value = "采用标准")
    private String standard;

    @ApiModelProperty(value = "乐观锁")
    @Version
    @TableField(fill = FieldFill.INSERT)
    private Integer version;

    @ApiModelProperty(value = "逻辑删除")
    @Unchangeable
    @TableLogic
    @TableField(fill = FieldFill.INSERT)
    private Integer isDeleted;

    @ApiModelProperty(value = "创建时间")
    @Unchangeable
    @TableField(fill = FieldFill.INSERT)
    private Date gmtCreate;

    @ApiModelProperty(value = "修改时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date gmtModified;


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getInspectionReport() {
        return inspectionReport;
    }

    public void setInspectionReport(String inspectionReport) {
        this.inspectionReport = inspectionReport;
    }

    public String getQualityCertificate() {
        return qualityCertificate;
    }

    public void setQualityCertificate(String qualityCertificate) {
        this.qualityCertificate = qualityCertificate;
    }

    public String getSafetyCertificate() {
        return safetyCertificate;
    }

    public void setSafetyCertificate(String safetyCertificate) {
        this.safetyCertificate = safetyCertificate;
    }

    public String getLicense() {
        return license;
    }

    public void setLicense(String license) {
        this.license = license;
    }

    public String getProductInfo() {
        return productInfo;
    }

    public void setProductInfo(String productInfo) {
        this.productInfo = productInfo;
    }

    public String getStandard() {
        return standard;
    }

    public void setStandard(String standard) {
        this.standard = standard;
    }

    public Integer getVersion() {
        return version;
    }

    public void setVersion(Integer version) {
        this.version = version;
    }

    public Integer getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(Integer isDeleted) {
        this.isDeleted = isDeleted;
    }

    public Date getGmtCreate() {
        return gmtCreate;
    }

    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    public Date getGmtModified() {
        return gmtModified;
    }

    public void setGmtModified(Date gmtModified) {
        this.gmtModified = gmtModified;
    }

    @Override
    public String toString() {
        return "Qualification{" +
        "id=" + id +
        ", productId=" + productId +
        ", inspectionReport=" + inspectionReport +
        ", qualityCertificate=" + qualityCertificate +
        ", safetyCertificate=" + safetyCertificate +
        ", license=" + license +
        ", productInfo=" + productInfo +
        ", standard=" + standard +
        ", version=" + version +
        ", isDeleted=" + isDeleted +
        ", gmtCreate=" + gmtCreate +
        ", gmtModified=" + gmtModified +
        "}";
    }
}
